body{
	font-size: 18px;
	font-family: Roboto, sans-serif;
	padding: 0;
	margin: 0;
	box-sizing: border-box;
}
footer {
	margin: 16px;
}
h1 {
	font-size: 35px;
}
h3 {
	font-size: 22px;
}
ol > li{
  margin: 10px 0;
}
ul > li{
  margin: 3px 0;
}
/* mobile */ @media(max-width: 750px){
	footer {
		margin: 5px;
	}
}
/* ================================ */
/* ======== MISC. CLASSES ========= */
/* ================================ */
.beam {
	background-color: rgba(0,0,0,0.5);
    border-top: 1px solid black;
    border-bottom: 1px solid black;
	position: relative;
}
.beam:before {
	pointer-events: none;
	content: " ";
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	border-top: 1px solid rgb(255, 255, 255, 0.5);
	border-bottom: 1px solid rgb(255, 255, 255, 0.5);
}
.faint {
	font-style: italic;
	color: rgb(118, 118, 118);
}
.ci {
	display: block;
	margin-left: auto;
	margin-right: auto;
	max-width: 95%;
}
.mobile {
	display: none;
}
/* mobile */ @media(max-width: 750px){
	.mobile {
		display: block;
	}
}
/* ================================ */
/* ======== HEADER DISPLAY ======== */
/* ================================ */
header {
	background-color: rgb(140, 140, 145);
	color: white;
	text-shadow: 1px 1px black;
}
header h1 {
	/* margin is slightly bigger than the logo, makes it appear as if its padded off of the logo */
	margin-left: 90px
}
header .box-left {
	/* Make the header's box-left larger so the title text fits across the nav bar */
	/* width: 50%; */
}
header .container-wide {
	/* Allow items hidden by small resolution to be shown */
	/* TODO: Switch to mobile UI menu instead */
	overflow-x:auto;
	overflow-y:hidden;
}
header .logo {
	/* Manually sized since the navbar is consistently 80 pixels */
    height: 79px;
    width: 79px;
    background: url("assets/logo.png");
    background-repeat: no-repeat;
    background-size: contain;
	float: left;
}
header nav {
	/* Horizontal flex for the navbar */
	height: 100%;
	display: flex;
	flex-direction: row;
}
header nav a {
	text-decoration: none;
	font-size: 24px;
	color: white;
	padding-top: 27px;
	padding-bottom: 27px;
	padding-right: 15px;
	padding-left: 15px;
	/* Animate hover bg-color 'glow' */
	-webkit-transition: background 0.2s;
    transition: background 0.2s;
	background: rgba(230,235,255,0);
}
header nav a:hover {
	background-color: rgba(230,235,255,0.1);
}
header nav .current a,
header nav .current {
	color: rgb(145, 197, 242);
}
/* ================================ */
/* ======== INDEX DISPLAY ========= */
/* ================================ */
#display {
	position: relative;
	min-height: 400px;
	background:url('assets/rc-sharp.gif') no-repeat center;
	background-size: cover;
	text-align: center;
	color: rgba(255,255,255);
	/* Border below section + shadow */
	border-bottom: 1px solid rgb(0, 0, 0, 0.6);
    box-shadow: 0px 1px 5px rgba(0, 0, 0, 0.4);
}
#display:before {
	/* Border inside section bottom */
	pointer-events: none;
	content: " ";
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	border-bottom: 1px solid rgb(255, 255, 255, 0.7);
}
#display h1 {
	font-size: 80px;
	font-weight: 300;
	text-shadow: 3px 3px black;
    margin: 3px;
}
#display p {
	font-size: 20px;
	text-shadow: 1px 1px black;
	margin-top: 0px;
}
.display-beam {
	position: relative;
	top: 125px;
    width: 100%;
}
#display a {
	color: white;
	font-decoration: none;
}
#download {
	text-align: center;
	position: relative;
	margin: 0 auto;
	top: 160px;
	width: 300px;
	height: 60px;
	border: 1px solid rgb(0, 0, 0, 0.6);
    box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.6);
	/* Animate hover bg-color 'glow' */
	-webkit-transition: background 0.2s;
    transition: background 0.2s;
	background: rgba(54, 67, 71, 0.8);
}
#download:hover {
	background: rgba(60, 107, 125, 0.8);
}
#download:before {
	/* Border inside section bottom */
	pointer-events: none;
	content: " ";
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	border: 1px solid rgb(255, 255, 255, 0.7);
	/* A very specific positioning hack, but it works */
	background-image: url('assets/dl.png');
    background-repeat: no-repeat;
    background-position: top 9px left 9px;
}
#download p {
	position: relative;
	margin-top: 17px;
	margin-left: 42px;
}
/* mobile */ @media(max-width: 750px){
	#display {
		/* Smaller image & size */
		min-height: 240px;
		background:url('assets/rc-sharp-x2.gif') no-repeat center;
		background-size: cover;
	}
	/* Less blank space */
	#display h1 {
		font-size: 60px;
		margin: 0px;
	}
	#display p {
		margin: 5px;
		margin-bottom: 10px;
	}
	.display-beam {
		/* Corrected offset for #display size */
		top: 65px;
	}
	/* Hide download on mobile */
	#download {
		display: none;
	}
}
/* ================================ */
/* =========== FLEX-BOX =========== */
/* ================================ */
.boxes {
	margin: 0px;
	padding: 0px;
}
.container {
	display: flex;
}
.container-wide {
	display: flex;
	justify-content: space-between;
}
.box {
	flex: 1;
}
.box-left {}
.box-right {}
/* mobile */ @media(max-width: 750px){
	.container {
		flex-direction: column;
		align-items: flex-start;
	}
	.box {
		margin: 3px;
	}
}
/* ================================ */
/* =========== CONTENT ============ */
/* ================================ */
#content {
	margin-left: 23px;
	margin-right: 23px;
}

/* mobile */ @media(max-width: 750px){
	#content {
		margin-left: 8px;
		margin-right: 8px;
	}
}